<?php
namespace Admin\Controller;
use Think\Controller;
class BrandController extends CommonController {

    /**
     * 品牌列表
     *
     * @return void
     * @author
     **/
    function lists()
    {
        $count=$this->Model->count();//查询满足要求的总记录数
        $Page=new \Think\Page($count,5);//
        $Page->setConfig('prev','上一页');//上一页
        $Page->setConfig('last','尾页');//尾页

        $show=$Page->show();// 输出分页显示

        // $list = $admin->order('id desc')->limit($Page->firstRow.','.$Page->listRows)->select();
        $list = $this->Model->order('id desc')->limit($Page->firstRow.','.$Page->listRows)->select();

// print_r($list);die;

        $this->assign('list',$list);// 赋值数据集
       // print_r($list);die;
        $this->assign('page',$show);// 赋值分页输出

        $this->display(); // 输出模板
    }



    /**
     * 添加品牌
     *
     * @return void
     * @author
     **/
    function add()
    {
        //检测是否post提交
        if(IS_POST){
            if (!empty($_FILES['file'])) {
                $upload = new \Think\Upload();// 实例化上传类
                $upload->maxSize   =     3145728 ;// 设置附件上传大小
                $upload->exts   =   array('jpg', 'gif', 'png', 'jpeg');// 设置附件上传类型

                //需在根目录下手动创建Uploads文件夹，执行之后，会自动在该文件夹下创建：public/Uploads,用来保存上传的图片
                $upload->savePath  = 'brand/'; // 设置附件上传目录
                $info   =   $upload->uploadOne($_FILES['file']);

                if(!$info) {// 上传错误提示错误信息
                    $this->error($upload->getError());
                }else{// 上传成功
                    //上传成功的图片路径
                   $_POST['logo']= './Uploads/'.$info['savepath'].$info['savename'];
                }
            }
            //添加品牌
            $id=$this->Model->add(I('post.'));

             // echo $this->Model->getLastSql();die;
             if ($id>0) {
                 $this->success('添加成功','',2);die;
             }else{
                $this->error('添加失败','',3);die;
             }
        }
        $this->display();
    }


    /**
     * 品牌编辑
     *
     * @return void
     * @author
     **/
    function edit()
    {
        //查询数据，将其绑定到页面显示
        $data=D('admin')->getByid(I('get.id'));
        $this->assign('data',$data);


        // 或者也可以这样写
        if (IS_POST) {
           //  echo $this->Model->getLastSql();die;

            //修改的第一种方式：单表操作
            $id=I('get.id');
            // print_r(I('get.id'));die;
             //把角色id独立取出来
            $data['group_id']=I('post.group_id');
            //把角色id删除掉（因为admin表中没有gruop_id字段），这时就可以修改员工信息
            unset($_POST['group_id']);

            //上传图片
            if (!empty($FILES['file'])) {
                $_POST['pic']=$this->upload();
            }
            //修改员信息
            $this->Model->where("id=$id")->save(I('post.'));
            //修改员工角色表信息
            $row=D('group_access')->where("uid=$id")->save($data);

            if ($row>0) {
                $this->success('信息修改成功',U('Admin/brand/lists'),2);die;
            }else{
                $this->error('信息修改失败','',2);die;
            }
        }

        $this->display();
    }


    /**
     * 删除图片
     *
     * @return void
     * @author
     **/
    function del_pic()
    {
        //先查询要删除的数据
        $data=$this->Model->getByid(I('get.id'));

        //更新数据
        $map['id']=I('get.id');
        //修改一个字段，设置pic的值为空，条件为$map
        $id=$this->Model->where($map)->setField('logo','');

        //数据修改成功则去删除头像文件
        if ($id>0) {
            //删除制指定路径下的文件
            unlink('./'.$data['logo']);
            //删除了之后还要回到edit()里面重新取数据显示
            // echo $data['id'];die;
            // 之前出现了一个错误：Admin/admin/edit/id中id后面少了/，因此路径不对
            $this->success('logo删除成功',U('Admin/brand/edit/id/'.$data['id']),2);die;
        }else{
            $this->error('logo删除失败','',2);die;
        }
    }

}